{
  "nbformat": 4,
  "nbformat_minor": 0,
  "metadata": {
    "colab": {
      "name": "PressureDiffusion_1D_Reservoir.ipynb",
      "provenance": [],
      "collapsed_sections": [],
      "authorship_tag": "ABX9TyOgh92p0cPpqDUmY0/eKYPS",
      "include_colab_link": true
    },
    "kernelspec": {
      "name": "python3",
      "display_name": "Python 3"
    }
  },
  "cells": [
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "view-in-github",
        "colab_type": "text"
      },
      "source": [
        "<a href=\"https://colab.research.google.com/github/Divyanshu-ISM/Oil-and-Gas-data-analysis/blob/master/PressureDiffusion_1D_Reservoir.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "p9xrUMYfoGlq",
        "colab_type": "text"
      },
      "source": [
        "#Simulating the Pressure Diffusivity equation in space and time \n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {
        "id": "z1kmaFcZxkuF",
        "colab_type": "text"
      },
      "source": [
        "## This is not a successful code, but just an illustration of how the Explicit method is very unstable normally. It diverges, which can be seen if you run the code. "
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Mhlhlm0rvHRu",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "import numpy as np\n",
        "import matplotlib.pyplot as plt\n",
        "%matplotlib inline"
      ],
      "execution_count": 5,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "V1sO56rI05Dr",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "import pylab as pl\n",
        "from IPython import display\n",
        "import time"
      ],
      "execution_count": 6,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "lFcMS2Wrv9em",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "def diff_const():\n",
        "  ''' \n",
        "  Calculates the Diffusivity Constant \n",
        "\n",
        "  '''\n",
        "  k = int(input('Enter the reservoir permeability: '))\n",
        "\n",
        "  phi = float(input('Enter the res porosity: '))\n",
        "\n",
        "  ct = float(input('Enter the total formation comp. (1/psi): '))\n",
        "\n",
        "  u = float(input('Enter the oil viscosity in cp: '))\n",
        "\n",
        "  dc = (0.0002637*k)/(phi*u*ct)\n",
        "\n",
        "  return dc"
      ],
      "execution_count": 7,
      "outputs": []
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "hFpAgQ2doDox",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 90
        },
        "outputId": "a64c9926-d9bd-4ab4-b9d9-5ec56654d6b0"
      },
      "source": [
        "L = 1000 #ft Reservoir length 1D\n",
        "\n",
        "n = 5 #gridblocks \n",
        "\n",
        "Pi = 3000 #psia\n",
        "\n",
        "P = np.ones(n)*Pi\n",
        "\n",
        "dx = L/n\n",
        "\n",
        "x = np.linspace(dx/2 , L - dx/2 , n)\n",
        "\n",
        "\n",
        "t_final = 10 # hours\n",
        "\n",
        "dt = 0.1 #hour\n",
        "\n",
        "# eeta = diff_const()\n",
        "\n",
        "t = np.arange(0,t_final,dt)\n",
        "\n",
        "\n",
        "P_w = 3000 #psi \n",
        "\n",
        "\n",
        "P_e = 200 #psi\n",
        "\n",
        "\n",
        "dPdt = np.empty(n)\n",
        "\n",
        "eeta = diff_const()\n",
        "\n",
        "\n",
        "\n"
      ],
      "execution_count": 17,
      "outputs": [
        {
          "output_type": "stream",
          "text": [
            "Enter the reservoir permeability: 150\n",
            "Enter the res porosity: 0.25\n",
            "Enter the total formation comp. (1/psi): 0.000001\n",
            "Enter the oil viscosity in cp: 100\n"
          ],
          "name": "stdout"
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "Fv6ey524qQnc",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 35
        },
        "outputId": "90bbddb2-c509-4e32-e50e-1e3e60a36cc2"
      },
      "source": [
        "0.0002637*150/(0.25*100*0.00001)\n",
        "# 15822*1/(200**2)"
      ],
      "execution_count": 4,
      "outputs": [
        {
          "output_type": "execute_result",
          "data": {
            "text/plain": [
              "158.22"
            ]
          },
          "metadata": {
            "tags": []
          },
          "execution_count": 4
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "H0BSkNOZxv_Q",
        "colab_type": "code",
        "colab": {
          "base_uri": "https://localhost:8080/",
          "height": 945
        },
        "outputId": "0cc9264c-d847-4ea8-a1d7-a1c4b9c0c080"
      },
      "source": [
        "# ((  Pi+1 - 2Pi + Pi-1 )/dx2 ) *eeta*dt + P(t) = P(t+1)\n",
        "\n",
        "P_hist = [3000]\n",
        "\n",
        "ax1 = plt.figure(figsize=(12,5))\n",
        "plt.grid()\n",
        "plt.style.use('fivethirtyeight')\n",
        "plt.title('Pressure Diffusion Through a Reservoir - A simulation in time!')\n",
        "# plt.axis([0,L,0,50])\n",
        "\n",
        "for j in range(len(t)):\n",
        "  plt.clf()\n",
        "\n",
        "  for i in range(1,n-1):\n",
        "\n",
        "    dPdt[i] = eeta*(P[i+1]-2*P[i]+ P[i-1])/(dx**2)\n",
        "\n",
        "  dPdt[0] = eeta*(2*P_w - 3*P[0] + P[1])/(dx**2)\n",
        "  dPdt[n-1] = eeta*(P[n-2] -3*P[n-1] + P_e)/(dx**2)\n",
        "\n",
        "  P = P - dPdt\n",
        "\n",
        "\n",
        "\n",
        "   # plt.figure(1)\n",
        "  plt.plot(x,P,'r')\n",
        "\n",
        "  plt.xlim(dx/2,L-dx/2)\n",
        "  plt.ylim(0,3000)\n",
        "  # plt.axis([0,L,0,50])\n",
        "  # plt.show()\n",
        " \n",
        "  plt.xlabel('Distance (x)')\n",
        "  plt.ylabel('Pressure psi')\n",
        "  \n",
        "  display.clear_output(wait=True)\n",
        "  display.display(pl.gcf())\n",
        "  time.sleep(1.0)\n",
        "\n",
        "\n",
        "\n",
        "    \n",
        "\n",
        "\n",
        "\n"
      ],
      "execution_count": 18,
      "outputs": [
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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c7Vr1y4dOnToil/8yy+/1PDhw9WlSxf5+PjoH//4h8O8zWZTWlqaQkNDFRgYqAEDBmjnzp0OaywWi5KSkhQUFKSgoCAlJSXJYrE4rNmxY4f69++vwMBAdenSRRkZGcYdMQAAAAA455IBqbCwUNHR0Q7HYmJiZLPZdPDgwSt+8ZMnTyosLEzp6eny9PS8YH7BggVauHChMjIytG7dOvn7+yshIUEnTpww1owaNUrbt29XZmamMjMztX37do0ZM8aYP378uBISEhQQEKB169YpPT1dL730kl5++eUrrh8AAADAteWSzyBZrVY1bdrU4V3M0UMAAB74SURBVNi5cWVl5RW/eFxcnOLi4iRJycnJDnM2m02LFy/WxIkTNWjQIEk/76QXHByszMxMjRw5Uvn5+Vq7dq1Wr16tqKgoSdL8+fMVHx+vgoICBQcH64MPPlBFRYUWL14sT09PhYWF6fvvv9eiRYs0fvx4ti4HAAAAYPjFXez27t2rf//738b4+PHjkqSCggI1a9bsgvXdunWrlcL27dunwsJC9enTxzjm6empHj16aOvWrRo5cqRyc3PVrFkzh7tcMTEx8vLy0tatWxUcHKzc3Fx1797d4Q5VbGysnnnmGe3bt08dOnSolXoBAAAAXP1+MSClpaUpLS3tguNTpkxxGNtsNplMJpWWltZKYYWFhZIkf39/h+P+/v46cuSIJKmoqEh+fn4Od4FMJpNatWqloqIiY02bNm0uOMe5uZoCUkFBQa1cx7WqocWiyPPGVqv1intGz92Dvl9c48OH1fW88ZmzZ2u1V/TdPei789qUlur8f3uWlpbq8K/sH313D/peO3x/+kkdzxufOH5cey7RW/pet4KDg2v9nJcMSAsXLqz1F7xauKLZ1xJTSYnD2MPD44p6du4jkahb9L1mpsaNHcaNGjastV7Rd/eg75enia+vw9jX11dev6J/9N096HvtafRf3//p3bx5jb2l79eGSwak3/3ud3VVxwXMZrMkqbi4WO3atTOOFxcXKyAgQJIUEBCgkpIS4+6V9POdrKNHjzqsKS4udjj3ufG5NQAAAAAg/cIudu7Uvn17mc1mZWdnG8cqKyu1efNm45mjqKgolZeXKzc311iTm5urkydPOqzZvHmzw6YS2dnZat26tdq3b19HVwMAAADgauDWgFReXq7t27dr+/btqq6u1sGD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jUaPHi2z2ayMjAx5eHi4vO/X/DbfGzdu1P3333/B8QcffFCLFy+WzWZTenq6/va3v8lisahbt2567rnnFBYWZqy1WCyaMmWKPv30U0lSfHy85syZY+zIhgvV1JupU6cqNTVVkui9C4wdO1YbN25UUVGRmjdvrvDwcD322GPG9q30vG4MGDDA2OZbou+u8sgjjygnJ0clJSVq1aqVbr/9dmP7V4m+u9KaNWv01FNP6YcfflDbtm01evRojRkzxnggmt67xhdffKGBAwfq888/V7du3S6YX7JkiRYsWKDCwkJ16dJFzz77rO644w5jvqqqSjNmzFBmZqYqKyvVs2dPPf/882rbtm1dXsZV48SJE3rmmWf08ccf6+jRozKbzRoyZIimTJli7LDGe901VqxYoVmzZunw4cNq2bKlBg4cqBkzZqhFixaSXN/3az4gAQAAAICzuJ8KAAAAAHYEJAAAAACwIyABAAAAgB0BCQAAAADsCEgAAAAAYEdAAgAAAAA7AhIAoNalpaXxHR92NptNd9xxh2bPnn3Zv/v666/r5ptvVlVVlQsqAwBcDAEJAHBJ//jHP+Tj42P8mM1mhYaG6oEHHtArr7yiEydO1MrrnDp1Smlpadq4cWOtnK++yMzM1J49ezR27NjL/t3f//73qqqq0ptvvumCygAAF0NAAgA4Zdq0aXr11Vf1/PPPKykpSZKUmpqqHj166D//+Y/D2smTJ+unn366rPNXVFQoIyNDmzZtqrWa64MXX3xRAwcOlJ+f32X/rqenpx588EG9/PLLqq6udkF1AID/RkACADglNjZWiYmJ+v3vf68///nPWr58uf71r3/p6NGjevDBB1VRUWGsbdiwoZo2berGauuHb7/9Vt99950SEhJ+9TkeeOABHTx4UF988UUtVgYAqAkBCQDwq/Xq1UuTJ0/WgQMH9P777xvHL/YM0rZt2zRs2DB16tRJZrNZN998s5KSklRRUaF9+/apU6dOkqSMjAzj43znPpa2f/9+paSkKCoqSq1bt1ZQUJASExO1Y8cOh9fYuHGjfHx8lJmZqeeff15hYWEym80aOHCgdu/efUH933zzjRITE9WhQwe1bt1a3bt317x58xzW/PDDD/rjH/+oG2+8UWazWXfddZc++ugjp/rzySefyMPDQz179jSO2Ww23Xfffbrxxhsd7rJZrVb17dtX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\n",
            "text/plain": [
              "<Figure size 864x360 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        },
        {
          "output_type": "error",
          "ename": "KeyboardInterrupt",
          "evalue": "ignored",
          "traceback": [
            "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
            "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
            "\u001b[0;32m<ipython-input-18-85951abd05f4>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m     36\u001b[0m   \u001b[0mdisplay\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mclear_output\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mwait\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     37\u001b[0m   \u001b[0mdisplay\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdisplay\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mpl\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgcf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 38\u001b[0;31m   \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msleep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m1.0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     39\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     40\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
            "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
          ]
        },
        {
          "output_type": "display_data",
          "data": {
            "image/png": "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c7Vr1y4dOnToil/8yy+/1PDhw9WlSxf5+PjoH//4h8O8zWZTWlqaQkNDFRgYqAEDBmjnzp0OaywWi5KSkhQUFKSgoCAlJSXJYrE4rNmxY4f69++vwMBAdenSRRkZGcYdMQAAAAA455IBqbCwUNHR0Q7HYmJiZLPZdPDgwSt+8ZMnTyosLEzp6eny9PS8YH7BggVauHChMjIytG7dOvn7+yshIUEnTpww1owaNUrbt29XZmamMjMztX37do0ZM8aYP378uBISEhQQEKB169YpPT1dL730kl5++eUrrh8AAADAteWSzyBZrVY1bdrU4V3M0UMAAB74SURBVNi5cWVl5RW/eFxcnOLi4iRJycnJDnM2m02LFy/WxIkTNWjQIEk/76QXHByszMxMjRw5Uvn5+Vq7dq1Wr16tqKgoSdL8+fMVHx+vgoICBQcH64MPPlBFRYUWL14sT09PhYWF6fvvv9eiRYs0fvx4ti4HAAAAYPjFXez27t2rf//738b4+PHjkqSCggI1a9bsgvXdunWrlcL27dunwsJC9enTxzjm6empHj16aOvWrRo5cqRyc3PVrFkzh7tcMTEx8vLy0tatWxUcHKzc3Fx1797d4Q5VbGysnnnmGe3bt08dOnSolXoBAAAAXP1+MSClpaUpLS3tguNTpkxxGNtsNplMJpWWltZKYYWFhZIkf39/h+P+/v46cuSIJKmoqEh+fn4Od4FMJpNatWqloqIiY02bNm0uOMe5uZoCUkFBQa1cx7WqocWiyPPGVqv1intGz92Dvl9c48OH1fW88ZmzZ2u1V/TdPei789qUlur8f3uWlpbq8K/sH313D/peO3x/+kkdzxufOH5cey7RW/pet4KDg2v9nJcMSAsXLqz1F7xauKLZ1xJTSYnD2MPD44p6du4jkahb9L1mpsaNHcaNGjastV7Rd/eg75enia+vw9jX11dev6J/9N096HvtafRf3//p3bx5jb2l79eGSwak3/3ud3VVxwXMZrMkqbi4WO3atTOOFxcXKyAgQJIUEBCgkpIS4+6V9POdrKNHjzqsKS4udjj3ufG5NQAAAAAg/cIudu7Uvn17mc1mZWdnG8cqKyu1efNm45mjqKgolZeXKzc311iTm5urkydPOqzZvHmzw6YS2dnZat26tdq3b19HVwMAAADgauDWgFReXq7t27dr+/btqq6u1sGD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jUaPHi2z2ayMjAx5eHi4vO/X/DbfGzdu1P3333/B8QcffFCLFy+WzWZTenq6/va3v8lisahbt2567rnnFBYWZqy1WCyaMmWKPv30U0lSfHy85syZY+zIhgvV1JupU6cqNTVVkui9C4wdO1YbN25UUVGRmjdvrvDwcD322GPG9q30vG4MGDDA2OZbou+u8sgjjygnJ0clJSVq1aqVbr/9dmP7V4m+u9KaNWv01FNP6YcfflDbtm01evRojRkzxnggmt67xhdffKGBAwfq888/V7du3S6YX7JkiRYsWKDCwkJ16dJFzz77rO644w5jvqqqSjNmzFBmZqYqKyvVs2dPPf/882rbtm1dXsZV48SJE3rmmWf08ccf6+jRozKbzRoyZIimTJli7LDGe901VqxYoVmzZunw4cNq2bKlBg4cqBkzZqhFixaSXN/3az4gAQAAAICzuJ8KAAAAAHYEJAAAAACwIyABAAAAgB0BCQAAAADsCEgAAAAAYEdAAgAAAAA7AhIAoNalpaXxHR92NptNd9xxh2bPnn3Zv/v666/r5ptvVlVVlQsqAwBcDAEJAHBJ//jHP+Tj42P8mM1mhYaG6oEHHtArr7yiEydO1MrrnDp1Smlpadq4cWOtnK++yMzM1J49ezR27NjL/t3f//73qqqq0ptvvumCygAAF0NAAgA4Zdq0aXr11Vf1/PPPKykpSZKUmpqqHj166D//+Y/D2smTJ+unn366rPNXVFQoIyNDmzZtqrWa64MXX3xRAwcOlJ+f32X/rqenpx588EG9/PLLqq6udkF1AID/RkACADglNjZWiYmJ+v3vf68///nPWr58uf71r3/p6NGjevDBB1VRUWGsbdiwoZo2berGauuHb7/9Vt99950SEhJ+9TkeeOABHTx4UF988UUtVgYAqAkBCQDwq/Xq1UuTJ0/WgQMH9P777xvHL/YM0rZt2zRs2DB16tRJZrNZN998s5KSklRRUaF9+/apU6dOkqSMjAzj43znPpa2f/9+paSkKCoqSq1bt1ZQUJASExO1Y8cOh9fYuHGjfHx8lJmZqeeff15hYWEym80aOHCgdu/efUH933zzjRITE9WhQwe1bt1a3bt317x58xzW/PDDD/rjH/+oG2+8UWazWXfddZc++ugjp/rzySefyMPDQz179jSO2Ww23Xfffbrxxhsd7rJZrVb17dtX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\n",
            "text/plain": [
              "<Figure size 864x360 with 1 Axes>"
            ]
          },
          "metadata": {
            "tags": []
          }
        }
      ]
    },
    {
      "cell_type": "code",
      "metadata": {
        "id": "QMZwc_eU1TcH",
        "colab_type": "code",
        "colab": {}
      },
      "source": [
        "PRe"
      ],
      "execution_count": null,
      "outputs": []
    }
  ]
}